package com.algorithm.ch1.hf.array;

/**
 * 买卖股票的最佳时机 II
 *输入: [7,1,5,3,6,4]
 *输出: 7
 *解释: 在第 2 天（股票价格 = 1）的时候买入，在第 3 天
 *              （股票价格 = 5）的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。
 *随后，在第 4 天（股票价格 = 3）的时候买入，在第 5 天
 *               （股票价格 = 6）的时候卖出, 这笔交易所能获得利润 = 6-3 = 3 。
 *
 */
public class maxProfit {

    public static void main(String[] args) {
        int[] nums = new int[]{7,1,5,3,6,4};
        int max = max(nums);
        System.out.println("max profit is:" + max);
    }

    public static int max(int[] nums){
        //最大赚取。。。
        int total = 0;
        int min = 0;
        int max = 0;
        for(int i = 0;i<nums.length - 1;i++) {
            if(nums[i + 1] > nums[i]) {
                min = nums[i];
                //找到最大值
                for(int a = i;a < nums.length - 1;a++) {
                    if(nums[a + 1] > nums[a]) {
                        max = nums[a + 1];
                        i = a;
                        total += max - min;
                        //重置
                        min = 0;
                        max = 0;
                        break;
                    }
                }
            }
        }
        return total;
    }


}
